export default {
  // 开启命名空间
  namespaced: true,
  
  // 数据
  state: () => ({
    address: JSON.parse(uni.getStorageSync('address') || '{}'),
    token: uni.getStorageSync('token') || '',
    userinfo:JSON.parse(uni.getStorageSync('userinfo') || '{}'),
    // 重定向的Object对象
    redirectInfo: null
  }),
  
  // 方法
  mutations: {
    // 更新收货地址
    updateAddress(state,address) {
      state.address = address
      
      this.commit('m_user/saveAddressToStorage')
    },
    // 持久化存储 address
    saveAddressToStorage(state) {
      uni.setStorageSync('address',JSON.stringify(state.address))
    },
    updateUserInfo(state,userinfo) {
      state.userinfo = userinfo
      
      this.commit('m_user/saveUserInfoTostorage')
    },
    saveUserInfoTostorage(state) {
      uni.setStorageSync('userinfo',JSON.stringify(state.userinfo))
    },
    // 更新用户的token
    updateToken(state,token) {
      state.token = token
      this.commit('m_user/saveTokenTostorage')
    },
    // 将token持久化存储到本地
    saveTokenTostorage(state) {
      uni.setStorageSync('token',state.token)
    },
    updateRedirectInfo(state,info) {
      state.redirectInfo = info
      console.log(state.redirectInfo);
    }
  },
  
  getters: {
    addStr(state){
      if(!state.address.provinceName) return ''
      
      return state.address.provinceName + state.address.cityName + state.address.countyName + state.address.detailInfo
    }
  }
  
}